package cn.kgc.bdqn_studentinfomanager.dao.user;

import cn.kgc.bdqn_studentinfomanager.pojo.Model.BdqnStudentinfo;
import cn.kgc.bdqn_studentinfomanager.pojo.Model.BdqnTeacherinfo;
import cn.kgc.bdqn_studentinfomanager.pojo.vo.ShowRoleVo;
import cn.kgc.bdqn_studentinfomanager.pojo.vo.StateVo;
import cn.kgc.bdqn_studentinfomanager.pojo.vo.FromData;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * by Shanshui CC on 2020/12/6 13:15
 */
@Mapper
public interface UserMapper {


    /**
     * 登录时判断手机号是否存在
     * @param phone
     * @return
     */
    public String queryPhone(String phone);

    /**
     * 登录
     * @param phone
     * @param password
     * @return
     */
    public BdqnTeacherinfo queryTeacherInfo(@Param("phone") String phone, @Param("password") String password);



    /**
     * 点击注册页面时加载专员下拉框
     * @return
     */
    public List<ShowRoleVo> showCommissioner();

    /**
     * 查询所有职位列表
     * @return
     */
    public List<StateVo> queryStateName();


    /**
     *  判断渠道专员老师是否存在 by 渠道专员手机号
     */
    public Integer queryCommissionerByPhone(String commissioner);

    /**
     * 招生老师注册
     * @param userVo
     * @return
     */
    public Integer insertTeacherInfo(FromData userVo);


    /**
     * 短信验证登录
     * @param phone
     * @return
     */
    public BdqnTeacherinfo queryTeacherInfoByPhone(@Param("phone") String phone);


    /**
     * 修改用户密码
     * @param newUserPassword
     * @return
     */
    public Integer updateTechaerInfoUserPassword(@Param("newUserPassword") String newUserPassword, @Param("id") String id);

    /**
     * 忘记密码_修改密码
     * @param phone
     * @param newPassword
     * @return
     */
    public Integer updatePwd(@Param("phone") String phone, @Param("newPassword") String newPassword);


    /**
     * 根据用户id查询用户对象
     * @param id
     * @return
     */
    public BdqnTeacherinfo queryTeacherInfoById(@Param("id") String id);




    /**
     *  根据年月时间查询学员数量     /   根据年月和学生状态查询当月学院报名数量
     * @return
     */
    public Integer queryStudentInfoCountByCreatedate(@Param("id") Integer id, @Param("state") Integer state);


    /**
     *  根据年月查询当月学员列表     /   根据年月和学生状态查询当月学院报名列表
     * @return
     */
    public List<BdqnStudentinfo> queryStudentInfoListByCreatedate(@Param("id") Integer id, @Param("state") Integer state);

}
